iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 5
1

步驟B-3:資料採礦(Data Mining)

備料,不是烹飪食材的過程,而是烹飪食材前的步驟。
採礦,不是雕琢原石的過程,而是雕琢原石前的步驟。

因為是觀念上的理解或轉換,故字數不打算在今日寫太多。
今天這篇,可能會是與目前業界觀念最衝突的一篇。

然而,小馬若僅只是隨波逐流地去跟隨眾人的說法,而不去質疑這個說法的爭議點,也不去探究這個詞彙是如何從最初被人使用,一直到現在默默呈現一種積非成是的狀況,那...網路上一堆資料,小馬抄下來就罷了,本系列文的意義目的也不復存在。所以,讓我們腦力激盪一下,細細深思這個詞彙,怎麼解釋,最為合理?



乾淨的整根蘿蔔、乾淨的整隻豬,都是可以吃的,因為你在前一個步驟,已經把食材處理到只剩下【可食用】的完整食材。只是現在目標是做出「蘿蔔排骨湯」,不需要蘿蔔皮,也不會整根蘿蔔丟下去,必須切塊;豬的部分,只需要豬的肋骨排部分,甚至你沒辦法自己動手做,必須透過屠宰場處理。

資料同理,乾淨清整完畢的資料,全部都是可以用的,只是視目標而定,你必須找出因應目標,相對應的資料,若複雜點,你必須透過一些運算邏輯去處理,甚至有時候,光是做出具備分析價值的準備資料,就必須經過好幾道的處理程序(如屠宰場般),好讓你後續進行分析。

哎呀......是不是已經不小心暴雷了......

小馬認為,這才是「採礦(Mining)」真正的初衷,也是相較合理的解釋。請這麼想,採礦、Mining,這個動作,指的既不是雕琢原石的過程,也不是最後把寶石裝在珠寶盒裡的過程,而就是字面上的定義,正在從礦山裡挖掘出將用來被雕琢的寶石原石,找出寶石原石,準備讓寶石師傅雕琢。

換句話說,採礦是雕琢原石前的步驟、製作寶石前的步驟,挖掘、採集出原石,但還沒開始被雕琢。這句看起來這麼廢話的描述,放在資料領域裡,卻會被人誤用,實令小馬深感困惑。

蘿蔔排骨湯也是同理,你準備好了所有食材(已歷經了採集、清洗、切塊備料),但還沒開始丟進爐子裡煮,而準備食材最後的這個【切塊備料】,準備出【最終食材】(已非完整食材原料)的過程,套在資料領域上,就叫做資料採礦(Data Mining),一個很漂亮的資料被你採集後清洗且切塊了,但你還沒有真的開始對這個資料做煮食。

明天的實際舉例,盼能讓大家更清楚。



資料採礦 番外篇1

為了爭一口氣 踏進Data領域

我可能正在說出很多分析人員的心聲。
(今天的番外一開頭就自以為啊!!)
(小馬你484不想寫正文,只想寫番外?)
(小馬你最好不要等下番外字數比正文多喔...)
/images/emoticon/emoticon16.gif

小馬我經濟系畢業,數學邏輯是不錯,就學期間也用過統計軟體或R,但無論如何沒有想過某天是靠著SQL在吃飯。這到底怎麼一腳踏入這不歸路...呃不是...這充滿願景與未來價值的領域的呢?

這發生在新鮮人出社會的頭兩年,當時候身為數據分析人員,卻發現IT單位提供的資料錯誤百出,你有沒有看過BI系統裡面跳出來的達成率(對!就是【實績/目標=達成率】、應該是了不起常落在0%~300%範圍的那個【達成率】),是破百的?不是破【100%】喔!是破【100.00】(10000%)。

蛤?達成率一萬趴是什麼概念?

我尋尋覓覓冷冷清清地追尋答案,得到的回應大致都是...

問需求單位
「喔那個達成率是錯的,不要用就好啦~」
「我們都會自己抓檔案下來,再自己算達成率。」

問IT單位
「有驗收過需求單位說OK啊~」
「沒關係反正那個沒有人在用。」
「你要這個數據幹嘛?」

後來當然我就找出原因了,因為他們把達成率寫成實績/目標 as 達成率而不是SUM(實績)/SUM(目標) as 達成率。於是BI系統裡的達成率並非一個聚合函數,而是一個實際寫死的數值,當現在有多筆,達成率是直接相加,也就是SUM(實績/目標),那當你有100項達成率100%的商品,你的達成率就會變成10000%了~

事實上,我還歷經了一陣子的AVG(實績/目標) as 達成率,因為這個寫法看起來很像真的達成率。但有點數理概念的人都懂這方法是錯的,當每筆資料的目標落差很大時,這種直接平均的算法和實際值會落差甚大。

達成率這例子只是冰山一角,因為較好說明被我拿來這裡寫。而我當時,就必須在這樣IT素質的環境下,進行數據分析的工作......#$@%#@^?

抱歉!我這麼說其實有失公道!
隨著年紀漸長,到現在其實就知曉,這充其量只能說非戰之罪,而不能說是人家素質有問題。因為要同時具備IT能力和數學能力的人,畢竟不在多數,甚至人家當初入行時,可能也不是以數據計算作為主要工作,很可能根本沒有達成率的概念,這無疑是指責魚為何不能像鳥那樣飛。所以這樣說,非常不公道,抱歉,小馬我自掌嘴(啪啪啪)。

好的故事繼續,
終於到了某天會議上......

我質疑IT的某個數據不正確,我算出來的答案和他們給的資料落差非常大(甚至,我知道他們用錯了什麼方法、誤會了哪個環節,導致他把數據寫成錯的,因為我試著把他的錯誤數據給做了出來。)

但IT並未回頭檢視自己的不足,而是惱羞拍桌地吼著:
「這種數據很難處理你懂不懂!你那麼厲害!不然你來啊!

欸嘿~(吳宗憲貌)
於是小馬我就來了。


上一篇
資料清洗(Data Cleansing)
下一篇
資料採礦(Data Mining) -2.實例
系列文
AI無法一步登天,讓我們先從專有名詞定義開始。31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言